#ifndef TOOLTIPSBUTTON_H
#define TOOLTIPSBUTTON_H

#include <QPushButton>

/*
    继承了 QPushButton GUI类
    整体功能:
        实现了悬浮窗按键的基础类
    具体功能：
        1、重载了enterEvent和timeEvent，实现了悬浮窗toolTips的绘制和计时器清除
*/

class ToolTipsButton : public QPushButton
{
    Q_OBJECT
public:
    explicit ToolTipsButton(QWidget* parent = nullptr, QWidget* toolTips = nullptr);

    void SetToolTips(QWidget* toolTips);
    QWidget* ToolTips() const;

protected:
    void enterEvent(QEnterEvent *event) override;
    void timerEvent(QTimerEvent *event) override;

private:
    QWidget* mToolTips{nullptr};
    int mTimerId{};
};

#endif // TOOLTIPSBUTTON_H
